package com.mojian.service;

import com.mojian.common.Result;
import com.mojian.model.vo.PayOrderVO;

import java.util.Map;

/**
 * 支付服务接口
 */
public interface PaymentService {

    /**
     * 创建支付宝订单
     * @param orderVO 订单信息
     * @return 订单结果，包含二维码URL
     */
    Result<PayOrderVO> createAlipayOrder(PayOrderVO orderVO);

    /**
     * 查询订单状态
     * @param orderNo 订单号
     * @return 订单状态
     */
    Result<PayOrderVO> checkOrderStatus(String orderNo);

    /**
     * 处理支付宝异步通知
     * @param params 通知参数
     * @return 处理结果
     */
    String handleAlipayNotify(Map<String, String> params);
    
    /**
     * 检查用户是否已支付指定文章
     * @param userId 用户ID
     * @param articleId 文章ID
     * @return 是否已支付
     */
    boolean checkArticlePaid(Long userId, Long articleId);
} 